﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Framework.MQS
{
    /// <summary>
    /// 消息队列操作
    /// </summary>
    public abstract class MessageQueue
    {
        /// <summary>
        /// 发送消息到消息队列
        /// </summary>
        /// <param name="messageBody"></param>
        internal abstract void SendMessage(string messageBody);
        /// <summary>
        /// 批量发送消息到消息队列
        /// </summary>
        internal abstract void BatchSendMessage();
        /// <summary>
        /// 消费消息队列的消息
        /// </summary>
        internal abstract void ReceiveMessage();
        /// <summary>
        /// 批量消费队列的消息
        /// </summary>
        internal abstract void BatchReceiveMessage();
        /// <summary>
        /// 删除已经被消费过的消息
        /// </summary>
        internal abstract void DeleteMessage();
        /// <summary>
        /// 批量删除消息队列多条消息
        /// </summary>
        internal abstract void BatchDeleteMessage();
        /// <summary>
        /// 查看消息
        /// </summary>
        internal abstract void PeekMessage();
        /// <summary>
        /// 批量查看消息
        /// </summary>
        internal abstract void BatchPeekMessage();
    }
}
